package service;

import pojo.AdminMessage;
import pojo.BookBorrow;
import pojo.BookMessage;
import pojo.UserMessage;

import java.util.List;
import java.util.Map;

public interface AdminBookService {
    /**
     * 管理员添加书
     */
    int addBook(BookMessage book);

    /**
     * 管理员通过书名删除书
     */
    int deleteBook(String bookName);

    /**
     * 管理员查看所有的借阅信息
     */
    List<BookBorrow> getAlllender();

    /**
     * 管理员修改图书内容
     */
    int UpdateBookMessage(BookMessage book);

    /**
     * 管理员修改个人信息
     */
    int UpdateAdminMesssage(AdminMessage message);

    /**
     * 通过类别或书名查找书籍
     */
    List<BookMessage> getBooksByInfo(Map map);

    /**
     * 通过名字查看是否存在
     */
    AdminMessage getAdminMessage(String controllerName, String controllerPassword);//登录

    /**
     * 删除某个用户的借阅信息
     */
    int delete(String bookName, String readerName);

    /**
     * 获取所有书籍
     */
    List<BookMessage> getAllBooks();

    /**
     * 获取所有借阅信息
     */
    List<BookBorrow> getAllLender(String readerName);

    /**
     * 获取当前管理员信息
     * **************************
     */
    AdminMessage getAdmin(String name);

    /**
     * 查询某一用户信息
     */
    List<UserMessage> getuser(String userName);

    /**
     * 获取所有用户信息
     */
    List<UserMessage> getAlluser();

    /**
     * 查询某一本书籍信息
     */
    BookMessage getBook(String bookName);

    /**
     * 借阅表查询某一用户的信息
     */
    int getLends(String userName);
}